package com.rw.coco.api.data;

import com.rw.coco.api.data.persistence.*;

/**
 * 持久性数据交互
 */
public interface PersistenceMapper {
    /**
     * 获取账号相关Mapper
     *
     * @return AccountMapper
     */
    AccountMapper getAccountMapper();

    /**
     * 获取角色相关Mapper
     *
     * @return CharacterMapper
     */
    CharacterMapper getCharacterMapper();

    /**
     * 获取角色属性相关Mapper
     *
     * @return CharacterPropertyMapper
     */
    CharacterPropertyMapper getCharacterPropertyMapper();

    /**
     * 获取机器人相关Mapper
     *
     * @return BotMapper
     */
    BotMapper getBotMapper();

    /**
     * 获取卡堆相关Mapper
     *
     * @return DeckMapper
     */
    DeckMapper getDeckMapper();

    /**
     * 获取卡片相关Mapper
     *
     * @return CardMapper
     */
    CardMapper getCardMapper();

    /**
     * 获取群组相关Mapper
     *
     * @return GroupMapper
     */
    GroupMapper getGroupMapper();

    /**
     * 获取群旁观相关Mapper
     *
     * @return ObMapper
     */
    ObMapper getObMapper();

    /**
     * 获取事务操控器
     *
     * @return TransactionSwitch
     */
    TransactionSwitch getTransactionSwitch();
}
